Ulm Ux Api
TMF666 Retrieve billingAccount by id
Uses Cases
This usecase is used to retrieve the Customer's billingAccount Details based on the account number.
URL
https://nonprod.esb.lla.com/dev/ulm-ux/ulm-ux/v1/{businessId}/billingAccount/{id}###
cURL Request
curl --location 'https://nonprod.esb.lla.com/dev/ulm-ux/ulm-ux/v1/PR/billingAccount/8211990010031508' \
--header 'client_id: xxxxxxx' \
--header 'client_secret: xxxxxxx' \
--header 'X-Correlation-ID: 2-23d2c8d0-2fb4-11ef-94fc-005056a2a8c5'URL PARAMS
| name | type | description | required |
|---|---|---|---|
| businessId | string | 2 letter ISO 3166 country code (TT, BB, JM, PA, etc.) identifying the business unit. | Y |
| serviceId | string | Unique identifier of the service. | Y |
Header
| name | type | description | required |
|---|---|---|---|
| client_id | string | The client_id identifying the channel. Minimum characters: 5 | Y |
| client_secret | string | Password associated with the client_id. Minimum characters: 5 | Y |
| X-Correlation-ID | string | Identifier that correlates HTTP request between a client and server. Any identification model (UUDI, checksum, etc.) can be used, as long as it is a unique value to differentiate a transaction. | Y |
Body
NOTE:
- All Use Cases are listed and referenced to their examples on Use Case section
- All definitions are described on RAML, inside of Anypoint Design Center.
Definitions
Possible response success
This section defines all the possible data structures received by the client and that must be considered satisfactory at the time of responding to the method.
[ 200 ]
OK - request processed successfully, response body contains an entity corresponding to the requested resource.
NOTE:
- All Use Cases are listed and referenced to their examples on Use Case section
- All definitions are described on RAML, inside of Anypoint Design Center.
Response
In this section all the possible data structures received by the client at the moment of responding the method are defined.
{
"id": "8211990010031508",
"accountType": "RES",
"description": "MARIA ARIAS TABERA",
"lastModified": "2026-02-05T00:00:00.000-04:00",
"name": "MARIA ARIAS TABERA",
"paymentStatus": "V",
"state": "NORMAL",
"accountBalance": [
{
"amount": {
"unit": "USD",
"value": 0.00
},
"balanceType": "ReceivableBalance",
"validFor": {
"startDateTime": "2026-01-18T00:00:00.000-04:00",
"endDateTime": "2026-02-17T00:00:00.000-04:00"
}
},
{
"amount": {
"unit": "USD",
"value": 154.07
},
"balanceType": "LastPaymentAmount",
"validFor": {
"endDateTime": "2026-02-05T00:00:00.000-04:00"
}
}
],
"accountRelationship": [
{
"relationshipType": "contains",
"account": {
"id": "8211990010031508",
"description": "RES MARIA ARIAS TABERA",
"name": "MARIA ARIAS TABERA",
"@type": "BillingAccount"
},
"validFor": {
"startDateTime": "2021-08-18T00:00:00.000-04:00",
"endDateTime": "2021-09-09T00:00:00.000-04:00"
}
}
],
"billStructure": {
"cycleSpecification": {
"name": "monthly Billing",
"dateShift": 18,
"frequency": "monthly"
},
"presentationMedia": [
{
"name": "Mail"
}
]
},
"contact": [
{
"contactName": "MARIA ARIAS TABERA",
"contactType": "Primary",
"partyRoleType": "Owner",
"contactMedium": [
{
"mediumType": "PostalAddress",
"preferred": true,
"characteristic": {
"contactType": "BillingAdress",
"city": "SAN JUAN",
"country": "USA",
"postCode": "009171920",
"street1": "LIBERTY UNIVERSITY 20 AVE P DE LEON"
}
},
{
"mediumType": "PostalAddress",
"preferred": true,
"characteristic": {
"contactType": "AccountAdress",
"city": "SAN JUAN",
"country": "USA",
"postCode": "009171920",
"street1": "LIBERTY UNIVERSITY 20 AVE P DE LEON"
}
},
{
"mediumType": "Phone",
"characteristic": {
"contactType": "Home",
"phoneNumber": "7874506508"
}
},
{
"mediumType": "Phone",
"characteristic": {
"contactType": "Business",
"phoneNumber": "7874506508"
}
}
],
"relatedParty": {
"id": "5625",
"name": "MARIA ARIAS TABERA",
"role": "Owner",
"@referredType": "RelatedParty"
}
}
],
"creditLimit": {
"unit": "USD",
"value": 100.00
},
"defaultPaymentMethod": {
"id": "E",
"name": "EFT"
},
"financialAccount": {
"id": "2063",
"accountBalance": {
"balanceType": "ReceivableBalance",
"amount": {
"unit": "USD",
"value": 18
},
"validFor": {
"startDateTime": "2026-01-18T00:00:00.000-04:00",
"endDateTime": "2026-02-17T00:00:00.000-04:00"
}
},
"@referredType": "FinancialAccount"
},
"paymentPlan": [
{
"paymentFrequency": "01",
"planType": "Auto Pay Enable"
}
],
"characteristic": [
{
"name": "LocationId",
"value": "00917192000763"
},
{
"name": "DunningGroup",
"value": "090"
},
{
"name": "autoPayDate",
"value": "2026-02-05T00:00:00.000-04:00"
},
{
"name": "DebitDay",
"value": "05"
},
{
"name": "Customer",
"valueType": "Object",
"value": {
"id": "1101525212838",
"firstName": "MARIA",
"lastName": "ARIAS TABERA"
}
}
],
"relatedParty": [
{
"id": "1101525212838",
"name": "MARIA ARIAS TABERA",
"role": "Customer",
"@referredType": "Customer"
}
],
"@type": "BillingAccount"
}Possible response error
In this section all the possible data structures received by the client are defined and that must be considered as unsatisfactory when responding to the method.
[ 400 ]
Bad Request - the request could not be understood by the server due to malformed syntax. The client SHOULD NOT repeat the request without modifications.
{
"errors" : [{
"code" : 400,
"message" : "The request is invalid or not properly formed.",
"description" : "Malformed request syntax, invalid request message framing, or deceptive request routing."
}]
}[ 401 ]
Unauthorized - The request has not been applied because it lacks valid authentication credentials for the target resource.
{
"errors" : [{
"code" : 401,
"message" : "The user could not be authenticated for this request.",
"description" : "The request has not been applied because it lacks valid authentication credentials for the target resource."
}]
}[ 404 ]
Not Found - server has not found a resource with that URI. This may be temporary and permanent condition. This status code is commonly used when the server does not wish to reveal exactly why the request has been refused, or when no other response is applicable.
{
"message": "Resource not found"
}[ 500 ]
Internal Server Error - server encountered an error processing request. This should not happen normally, but it is a generic error message, given when no more specific message is suitable.
{
"errors" : [{
"code" : 500,
"message" : "Internal Server Error",
"description": "The request failed due to an internal error."
}]
}[ 501 ]
Not implemented - indicates that the server does not support the functionality required to fulfill the request. This is the appropriate response when the server does not recognize the request method and is not capable of supporting it for any resource.
{
"errors" : [{
"code" : 501,
"message" : "Not implemented",
"description" : "Operation GET /service for Business Id: xxxx not implemented"
}]
}Response
Definitions
Each of the request parameters is detailed.
| name | type | description | Required |
|---|---|---|---|
| id | string | account id | N |
| accountType | string | type of the account | N |
| description | string | company name or full name | N |
| lastModified | string | last modified date | N |
| name | string | name of the customer | N |
| paymentStatus | string | Delinquency status of the account | N |
| state | string | Connect status Ex: voluntary disconnect, Non-Pay Disc, Chard Off, NORMAL | N |
| accountBalance | Array | N | |
| accountBalance.amount.unit | string | Currency of the balance amount | N |
| accountBalance.amount.value | number | balance amount | N |
| accountBalance.balanceType | string | ReceivableBalance (hard coded) | N |
| accountBalance.validFor.startDateTime | string | Billing start date | N |
| accountBalance.validFor.endDateTime | string | Billing end date | N |
| accountRelationship | Array | N | |
| accountRelationship.relationshipType | string | contains (hard coded) | N |
| accountRelationship.account.id | string | account id | N |
| accountRelationship.account.description | string | type + company name or full name | N |
| accountRelationship.account.name | string | company name or full name | N |
| accountRelationship.account.@type | string | BillingAccount (hard coded) | N |
| accountRelationship.validFor.startDateTime | string | connection date time | N |
| accountRelationship.validFor.endDateTime | string | disconnection date time | N |
| billStructure | Array | N | |
| billStructure.cycleSpecification | object | N | |
| billStructure.cycleSpecification.name | string | Name of billing Ex: Monthly billing, bi-monthly billing | N |
| billStructure.cycleSpecification.dateShift | number | cycle day of the billing | N |
| billStructure.cycleSpecification.frequency | string | Type of billing Ex: Monthly, bi-monthly | N |
| billStructure.presentationMedia | Array | N | |
| billStructure.presentationMedia.name | string | Statement preference Ex: Mail, Email | N |
| contact | Array | N | |
| contact.contactName | String | contact name | N |
| contact.contactType | String | Type of the contact | N |
| contact.partyRoleType | String | Role of the customer | N |
| contact.contactMedium | Array | N | |
| contact.contactMedium.mediumType | String | Type of the contact details | N |
| contact.contactMedium.preferred | Boolean | Preferred contact medium or not Ex: true or false | N |
| contact.contactMedium.characteristic.contactType | String | Type of contact | N |
| contact.contactMedium.characteristic.city | String | city of the customer | N |
| contact.contactMedium.characteristic.country | String | country of the customer | N |
| contact.contactMedium.characteristic.postCode | String | postal code of the customer | N |
| contact.contactMedium.characteristic.street1 | String | street name of the customer | N |
| contact.contactMedium.characteristic.phoneNumber | String | phone number of the customer | N |
| contact.relatedParty.id | String | tax identifier | N |
| contact.relatedParty.name | String | company or first + last name | N |
| contact.relatedParty.role | String | "Owner" (hard coded) | N |
| contact.relatedParty.@referredType | String | RelatedParty (hard coded) | N |
| creditLimit.unit | String | Currency of the credit limit | N |
| creditLimit.value | Number | Credit limit of the customer | N |
| defaultPaymentMethod.id | String | payment method id | N |
| defaultPaymentMethod.name | String | name of the payment method. Ex: Credit Card, EFT, Non Default Payment Method | N |
| financialAccount.id | String | 2063 (hard coded) | N |
| financialAccount.accountBalance.balanceType | String | ReceivableBalance (hard coded) | N |
| financialAccount.accountBalance.amount.unit | String | Currency | N |
| financialAccount.accountBalance.amount.value | Number | Day of the cycle | N |
| financialAccount.accountBalance.validFor.startDateTime | String | Billing account start date | N |
| financialAccount.accountBalance.validFor.endDateTime | String | Billing account end date | N |
| financialAccount.@referredType | String | FinancialAccount (hard coded) | N |
| paymentPlan | Array | N | |
| paymentPlan.paymentFrequency | String | Frequency of the billing | N |
| paymentPlan.planType | String | Plan type. Ex: Auto Pay Enable, Auto Pay Disable | N |
| characteristic | Array | N | |
| characteristic.name | String | Name of the details. Ex: LocationId, DunningGroup etc | N |
| characteristic.value | String or Object | Respective values | N |
| characteristic.value.id | String | customer id | N |
| characteristic.value.firstName | String | first name of the customer | N |
| characteristic.value.lastName | String | last name of the customer | N |
| characteristic.valueType | String | Type of value. Ex: object | N |
| relatedParty | Array | N | |
| relatedParty.id | String | customer id | N |
| relatedParty.name | String | company or first + last name | N |
| relatedParty.role | String | Customer (hard coded) | N |
| relatedParty.@referredType | String | Customer (hard coded) | N |
| @type | String | BillingAccount (hard coded) | N |